package contegor.scire.core.queries;

import java.io.Serializable;

import contegor.scire.core.Connectable;
import contegor.scire.core.Version;

/**
 * Base class for all conditions that can be used in a {@link Filter}.
 *
 * @version $Revision$
 * @author  Héctor Cirbián Pousa ($Author$)
 */
@Version("$Id$")
public abstract class Condition<C extends Connectable> implements Serializable, Cloneable {
  private static final long serialVersionUID = -1947380039140323593L;

  public abstract boolean eval(C connectable);

  @Override
  public abstract Condition<C> clone();
}
